package com.rockcent.mall.lib.repository;

import com.rockcent.common.common.PageResult;
import com.rockcent.mall.lib.domain.MerchantCoupon;
import com.rockcent.mall.lib.dto.CustomerCouponWalletDto;
import com.rockcent.mall.lib.dto.GiftVerifyDto;
import com.rockcent.mall.lib.dto.GiftVerifyItemDto;
import com.rockcent.mall.lib.dto.MerchantCouponDto;
import org.springframework.stereotype.Repository;

import java.util.Date;
import java.util.List;

/**
 * Created by DK on 16/10/22.
 */
@Repository
public interface CustomerCouponWalletRepositoryCustom {
    PageResult<MerchantCouponDto> findCustomerCouponPage(Long customerId, String couponStatus, PageResult pageResult);

    MerchantCouponDto findCustomerCouponInfo(Long id, Long customerId);

    Long countByCustomerIdAndDateDisabledBeforeNow(Long customerId);

    PageResult<CustomerCouponWalletDto> findMerchantCouponVerificationPage(Long merchantId, Long merchantStoreId, String couponType, String keyword, String beginDate, String endDate, PageResult pageResult);

    List<MerchantCouponDto> findOrderForMyCoupon(Long customerId, List<Long> merchantIdList);

    List<GiftVerifyItemDto> findCustomerCouponByVerifyPersonId(Long customerId, Long verifyId);
}
